/**
 * @author bipul_sinha
 * @version 1.0
 * @created 10th November, 2010.
 *
 * AbstractChildEntity
 *
 * Copyright @ 2010 by 
 * All Rights Reserved.
 * CONFIDENTIAL AND TRADE SECRET
 */
package com.ces.knacky.framework.model;

import com.ces.knacky.model.Flag;

/** 
 * It represents all those POJOs which are child of some parent entity. It provides implementation
 * of IFlaggable interface to change Flag_Id based on the change in the parent record.
 *     
 * @author bipul_sinha
 * @see AbstractBaseEntity
 * @see IEntity
 * 	
 */
public abstract class AbstractChildEntity extends AbstractBaseEntity implements IFlaggable {
	/**
	 * Represents Flag id of the current persistent object. It returns the current state of entity
	 * in terms of logging i.e Active, Inactive or Deleted.
	 */
	protected Flag flag;
    /**
     * This method is used to return flag Id value of the current persistent object. 
     * 
     * @return 	Integer
     * 			Represents flag id of the current persistent object.	
     */
    public Flag getFlag () {
        return flag;
    }
	/**
	 * This method is used to set the identifier of the persistent object.
	 * 
	 * @param 	id
	 * 			Represents id of the current persistent object.
	 */ 
    public void setFlag (Flag flag) {
    	this.flag = flag;
    }

}

